package entity;

import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 薪酬标准实体类
 * 用于定义不同职位和级别的薪酬标准
 */
@Data
public class SalaryStandard  {
    

    /**
     * 薪酬标准状态常量
     */
    /**
     * 审核状态常量
     */

    private Long salaryStandardId;                     // 薪酬标准ID，主键

    private String standardName;                       // 标准名称

    private BigDecimal basicSalary;                        // 基本工资

    private BigDecimal salaryStandardBonus;                // 奖金

    private BigDecimal salaryStandardAllowance;            // 补助

    private BigDecimal salaryStandardInsurance;            // 保险

    private BigDecimal totalAmount;                        // 总金额

    private Integer salaryStandardStatus;              // 状态 0:停用 1:启用

    private Long createUserId;                         // 创建人ID

    private Date createTime;                           // 创建时间

    private Long updateUserId;                         // 更新人ID

    private Date updateTime;                           // 更新时间


    private Long reviewUserId;                         // 审核人ID

    private Date reviewTime;                           // 审核时间

    // 在创建实体时自动设置时间
    SalaryStandard() {
        createTime = new Date();
        updateTime = new Date();
    }

    protected void onUpdate() {
        updateTime = new Date();
    }



    /**
     * 获取标准状态描述
     */
    public String getStatusDesc() {
        if (salaryStandardStatus == null) return "未知";
        return salaryStandardStatus == 1 ? "启用" : "停用";
    }


}
